/***********************************************************************
 * Module:  SelectionnerOriginator.java
 * Author:  Dian
 * Purpose: Defines the Class SelectionnerOriginator
 ***********************************************************************/

package originator;

import memento.Memento;
import memento.SelectionnerMemento;
import caretaker.Enregistreur;

import command.Command;
import command.Selectionner;

public class SelectionnerOriginator implements Originator {

	private Enregistreur enregistreur;
	
	private Command selectionner;
	
	private int debutSelection = 0;
	
	private int finSelection = 0;

	public SelectionnerOriginator(Enregistreur enreg, Command cmd) {
		super();
		this.enregistreur = enreg;
		this.selectionner = cmd;
	}

	@Override
	public void execute() {
		System.out.println("ici");
		((Selectionner) selectionner).execute();
		debutSelection = ((Selectionner) selectionner).getDeb();
		finSelection = ((Selectionner) selectionner).getFin();
		Memento m = new SelectionnerMemento(debutSelection, finSelection, this);
		//enregistreur.ajouterMemento(m);
	}

	@Override
	public void setMemento(Memento m) {
		((Selectionner) selectionner).setDeb(debutSelection);
		((Selectionner) selectionner).setFin(finSelection);
		((Selectionner) selectionner).executeMem();
	}
}